For some applications, there is a need to create a secure hardware based identification (ID). The ID needs to be randomly created, non-volatile, and unobservable when subjected to failure analysis (FA). For example, for field programmable gate array (FPGA) programming, secure IDs are used for coding encryption.
Static random-access-memory (SRAM) bit cells may be used to create the secure ID. However, SRAM bit cells initialize based on process variation. Many SRAM bit cells may initialize to a different state, depending on environmental conditions.